package cn.xiaosiyuan.util.date;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

public interface IMonUtil {

    /**
     * 获取本月最后一天
     *
     * @param year
     * @param month
     * @param defaultDay
     * @return
     */
    static String getLastDay(String year, String month, String defaultDay) {
        String result = defaultDay;

        // %02d,0表示不足的位补0，
        /**
         * %02d
         * 0表示不足的位补0
         * 2表示只取两位，多舍，少补
         * d表示integer类型
         */
        month = String.format("%02d", Integer.valueOf(month));

        // 获取当月的天数（需完善）
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
        // 定义当前期间的1号的date对象
        Date date = null;
        try {
            date = dateFormat.parse(year + month + "01");
        } catch (ParseException e) {
            e.printStackTrace();
        }
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        //月增加1
        calendar.add(Calendar.MONTH,1);
        //日期倒数一日,既得到本月最后一天
        calendar.add(Calendar.DAY_OF_MONTH,-1);
        Date voucherDate = calendar.getTime();

        String formatResult = dateFormat.format(voucherDate);
        result = formatResult.substring(formatResult.length()-2);
        return result;
    }

}
